This version of the program corrects some problems with cicns smaller than 32x32 and adds some features. It no longer creates cicns from icl8s automatically when the resource file is opened, and can open any file type by holding down the Option key when selecting the Open menu item. The user can choose to dither small color icons (ics8 and ics4). This produces better results in most of the cicn/icl8 conversions, though I think this will only work with 32-bit QuickDraw installed. The ability to create 32x32 PICT resources has also been added.
Icon Family Maker is a program that will create an entire icon family from a cicn or an icl8. I am defining an entire icon family as icl8, ics8, icl4, ics4, ICN#, and ics# resources. This is accomplished by plotting the cicn or icl8 in three offscreen pixmaps of different pixel depths and copying the pixmap data to the various icon family resources. Cicns can be created from icl8 resources. Including an optional ICN# resource with the same resource id as the icl8 will result in a better cicn.
To use Icon Family Maker, start with a file that contains the cicns and icl8s you want to convert into an icon family . For safety's sake, DO NOT WORK WITH AN ORIGINAL COPY of the file. If Icon Family Maker is being used to convert icl8s to cicns, include ICN# resources for each icl8 with the same resource id as the icl8. If an ICN# is not found for an icl8, the program will make an icon and mask for the cicn from the icl8 resource. The quality of the resulting icon and mask may not be as high as icons created by hand. Set your monitor to 8 bits/pixel or less (see problems below). Run Icon Family Maker.
Open the file containing the resources you want to convert. To open files with types other than 'rsrc' or 'SunD', hold the Option key down when you select the Open menu item. If you try to open a file that does not have a resource fork, Icon Family Maker will give you an error message. If the file opened successfully, you will see a grid displaying the cicns and icl8s in the file. Cicns are identified by the letter c following their resource id. Icl8s are identified by the letter i following their resource id, and are always drawn after all of the cicns have been drawn. If there are any cicns or icl8s in the file, the Save menu item and Resources menu will be enabled.
Use the Types menu item to select the resource that you want to create. Select the cicns and/or icl8s you want to convert using the mouse. Hold the shift key down to select additional icons and hold the Command key down to remove icons from the selection. Select Save from the File menu. The icon family resources will be written to the resource file. Newly added cicns and icl8s will appear in the window once all resources have been written to disk. You can now close the resource file and edit the newly created icon family resources with Resedit or your favorite resource editor.
The Types menu item allows you to set two parameters. The first is dithering of ics8 and ics4 resources. Dithering usually results in small icons that look better than those created without dithering. The second parameter is overwriting old resources. If this item is selected, the program will replace old resources having the same type and resource id as new resources it creates. For example, if you spent hours creating a nice ics8 resource with id 129 and create an ics8 resource from a cicn having id 129, your hand made resource will be deleted and the new resource will take its place. You can uncheck this checkbox to preserve existing resources.
That's all there is to it. This program was tested on a IIcx and Centris with only a few problems. Send questions, problems, suggestions, etc to me, and I'll try to respond as soon as I am able.
This program was written with MPW Object Pascal and MacApp 2.0.1 and is free, but not in the public domain. Source code is available. Please recycle.
Thanks to the following:
Bruce, for getting me to write the first version.
David at UCLA for encouraging me to add icl8->cicn conversion ability.
B. Kearney for suggesting the small cicn fix and getting me to finish this version.
Kate & Anna McCarrigle, Indigo Girls, X, Don Dixon & Marty Jones, Patty Larkin and numerous other artists for recording music that makes those late night programming sessions tolerable.
S.E.L.
Internet lasleyse@wam.umd.edu (checked often)
Compuserve 76324,107 (checked once a month or so)
USPS Mail Scott E. Lasley
2404 Cool Spring Road
Hyattsville, MD 20783-2253
Problems:
There is still a problem converting files with several hundred color icons. There is a maximum size for a resource file. The program currently does rudimentary checking to see if this maximum size is likely to be exceeded, but a more intelligent checker needs to be implemented. You may be able to work with files containing more than 500 cicns if you save only one or two resource types. Otherwise, use a resource editor to delete all but 300 or so cicns. This seems to be a reasonable limit if you are creating entire icon families.
There is a problem converting cicn resources if the monitor depth is greater than 8. I am not sure what is causing the problem. The safest work around is to set the monitor depth to 8 or less before running the program.
Enjoy the program, and send me any problems or suggestions you have about it.
Legal Stuph:
Apple Computer, Inc. makes no warranties whatsoever, either express or implied, regarding this product, including warranties with respect to its merchantability or its fitness for any particular purpose.
The MacApp software is proprietary to Apple Computer, Inc. and is licensed to Scott E. Lasley for distribution only for use in combination with Icon Family Maker.
I have made an effort to insure that this program will not corrupt data, but I am not responsible for any losses incurred by running this program. Please use it on a copy of your files.